/**
*
* @file
*		heap_av
*
* @brief
*		Heap implementation by anyav
*/

#ifndef __HEAP_AV_H__
#define __HEAP_AV_H__

#include "../../api/heap.h"

/**
* basic interface
*/
class heap_av: public heap876
{
private:
	// current volume of distributed memory
	size_t alloc_sz;

public:
	heap_av( size_t total, alloc_flags flag) : heap876(total, flag, "anyav")
	{ 
		alloc_sz = 0; 
	};
	virtual ~heap_av();
	virtual void*	alloc( size_t sz, unsigned int tag );
	virtual void	free( void* ptr )
	{
		(void)ptr;
	}

	virtual void	free_all( unsigned int tag )
	{
		(void)tag;
	}

	virtual size_t get_occupancy() const { return alloc_sz; };

};

#endif//__HEAP_AV_H__